// 请求验证中间件
// 接收一个验证模式(schema)作为参数，返回一个中间件函数
const validateRequest = (schema) => {
    return (req, res, next) => {
      try {
        // 使用 schema 验证请求体
        const { error } = schema.validate(req.body);
        // 如果验证失败，返回错误信息
        if (error) {
          return res.status(400).json({ message: error.details[0].message });
        }
        // 验证通过，继续下一个中间件
        next();
      } catch (error) {
        // 捕获其他错误并返回 500 错误
        res.status(500).json({ message: error.message });
      }
    };
  };
  
  module.exports = validateRequest;